/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package oef31gastenboek;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectOutputStream;
import java.util.ArrayList;
import java.util.Scanner;

/**
 *
 * @author Joris.Lefever
 */
public class Main {

    /**
     * @param args the command line arguments
     */
    
   // public GastenBoek<GastenBoekEntry> = gastenboek();
    
    public static void main(String[] args) throws Exception {
        // TODO code application logic here
        GastenBoekManager manager = new GastenBoekManager();

        Scanner sc = new Scanner(System.in); 
        sc.useDelimiter("\n");  

        System.out.println("Wat wil je doen? \nSchrijven " + "of lezen?\nGeef S of L :");
        String tkt="", naam="", boodschap = "";
        try {
          tkt = sc.next();
        }
        catch (Exception e) {} 
            if (tkt.equalsIgnoreCase("S")) { 

              //als er nog geen gastenboek is er één aanmaken
              try {
                    FileInputStream fis = new FileInputStream("c:gastenboek.dat");
                    System.out.println("Gastenboek gevonden");
              } catch (Exception e1) {
                    try {
                        FileOutputStream fos = new FileOutputStream("gastenboek.dat");
                        ObjectOutputStream oos = new ObjectOutputStream(fos); 
                        oos.close();
                        System.out.println("Er is een leeg gastenboek aangemaakt.");
                        } catch (IOException e2) {
                            System.out.println("Er kon geen leeg gastenboek" + " aangemaakt worden.");
                    }
              } 

              // hier volgt het schrijven
              System.out.println("Geef uw naam: ");
              try {
                    naam = sc.next();
              }
              catch (Exception e) {}
                System.out.println("Geef uw boodschap: ");
                try {
                    boodschap = sc.next();
                }
                catch (Exception e) {}
                    GastenBoekEntry opm = new GastenBoekEntry(naam, boodschap);
                    manager.schrijf(opm);
            }


            else { 
                // hier volgt het lezen
                ArrayList<GastenBoekEntry> alleEntries; 
                alleEntries = (ArrayList<GastenBoekEntry>) manager.leesBoek();
                for (int i = alleEntries.size()-1; i>=0; i--) {
                  System.out.println(alleEntries.get(i).getDatum() + "\t" + alleEntries.get(i).getSchrijver() + "\t" + alleEntries.get(i).getBoodschap());
                }
            } 
    }
        
}
